package cool.mtc.minghe.data.model.sys.menu.form;

import com.fasterxml.jackson.annotation.JsonProperty;
import cool.mtc.minghe.data.entity.sys.menu.MenuDO;
import lombok.Data;
import org.springframework.beans.BeanUtils;

/**
 * @author 明河
 */
@Data
public class MenuForm {
    private Long menuId;

    private Long menuParentId;

    private String name;

    @JsonProperty(value = "key")
    private String code;

    private String icon;

    private Integer orderIndex;

    private Boolean link;

    private String url;

    private String permission;

    private Boolean display;

    private Boolean enabled;

    public MenuDO transToDO() {
        MenuDO menuDO = new MenuDO();
        this.updateDO(menuDO);
        return menuDO;
    }

    public void updateDO(MenuDO menuDO) {
        BeanUtils.copyProperties(this, menuDO);
        menuDO.setParentId(this.getMenuParentId());
    }
}
